package modelLayer;

import java.util.ArrayList;

/**
 * AftaleContaineren bliver brugt til at opbevare alle afsluttede eller igangvaerende ordre og udlejninger.
 * 
 * @author (Gruppe 2. Jonas, Danny, Kasper, Bruno & Jesper) 
 * @version (17/12-2012)
 */
public class AftaleContainer
{
    // Fields
	private static AftaleContainer instance;
    private ArrayList<Aftale> aftaler;

    /**
     * Constructor for objects of class AftaleContainer
     */
    private AftaleContainer()
    {
        aftaler = new ArrayList<Aftale>();
    }
    public static AftaleContainer getInstance()
    {
    	if (instance == null)
    	{
    		instance = new AftaleContainer();
    	}
    	return instance;
    }
    
    /**
     * tilfoejer en aftale
     */
    public void tilfoejAftale(Aftale aftale)
    {
        aftaler.add(aftale);
    }
    
    /**
     * Finder aftalen paa arrayListen, ved at soege paa id.
     */
    public Aftale findAftale(int id)
    {
        int i = 0;
        boolean found = false;
        Aftale a = null;
        while(i < aftaler.size() && !found)
        {
            if(aftaler.get(i).getId() == id)
            {
                found = true;
                a = aftaler.get(i);
            }
            else
            {
                i++;
            }
        }
        return a;
        
    }
    
    /**
     * Sletter aftalen ved at soege paa id.
     */
    public void sletAftale(int id)
    {
        Aftale a = findAftale(id);
        aftaler.remove(a);
    }
}
